package com.排序.排序基础;

public class 希尔排序 {
    public static void sort(int[] a) {
        for(int gap=a.length >> 1;gap>0;gap=gap>>1){
            for(int low=gap;low<a.length;low++){
                int t=a[low];
                int i=low-gap;

                while(i>0 && a[i]<t){
                    a[i+gap]=a[i];
                    i-=gap;
                }

                if(i!=low-gap){
                    a[i+gap]=t;
                }
            }
        }
    }
}
